The current method of gathering and obtaining device information required for diagnostics is manual and therefore complex, time-consuming and prone to human errors. In the course of a customer care session for a device, a Customer Service Representative (“CSR”) must undertake the extensive and time-consuming task of asking the user complex questions pertaining to their wireless devices for problem diagnosis. This requires CSRs to be experts on many types of devices and their applications, and also requires users to spend increased time on the telephone to receive support for their applications. This situation is only getting worse with the passage of time as devices become more powerful and capable of handling more sophisticated tasks. The result is increased support costs, increased call handling times, complex diagnostic processes and overall frustration.
Therefore customers no longer want to call service providers to make changes to their services or to get some basic problem resolved, instead choosing customer care apps and web based self-care systems. Such systems deliver a more convenient, always-on, communication channel that helps lower cost of customer service and reducing staff workload by eliminating the number of customer service calls.
Self-care enables customers to check their balances, view financial transactions and invoices, modify personal details, change billing cycle dates, modify payment methods, change service parameters, and most importantly troubleshoot some of the basic issues that they may encounter.
Some existing methods provide an app on the device that can gather the information from the device and send it to the server for analysis. However, these methods have inherent problems that stem from the fact that there are many different devices that run on many different operating systems with different versions of operating systems and firmware. Additionally each of the device manufacturers tends to modify the OS version to suit the manufacturer's own needs, creating more fragmentation in the market. These unique branches of operating systems sometimes require a different device agent that may be specifically designed for that particular device. Thus many different versions of device agents may be required for addressing a broad customer audience with a wide selection of devices. These app versions require active management of all device agents to keep them current, as these devices go through updates of operating system, firmware and software during their normal lifecycle of use.
Additionally, each time an app is updated, it has to be resubmitted to the curated retail application marketplace (e.g. the AppStore) for approval and uploading. This adds delay to the app update process and may also create further fragmentation as some people may have an older version of the app while others may have a newer version of the app.
Thus we note that prior art methods have inherent limitations and are in need of improvement. In particular, it would be desirable to allow new features (e.g. OS features) to be managed across devices without the need to resubmit an app or recompile a device agent. It would be desirable to reduce the need for regular updating of an app (which currently requires a user to get a new version of the app from the app store), and instead allow apps on the device to be “updated” through configuration changes and API changes applied only to specific parts of the apps.